This invention pertains to the display of a multiplicity of moving objects on a raster scan display during the play of an electronic video game. More particularly, this invention relates to circuitry for inexpensively producing signals for controlling the display of a large number of objects on a color TV monitor in a game controlled, for example, by a microprocessor. Even more particularly, this invention relates to flexible, user-programmable circuitry for performing high speed logical and arithmetic operations related to such displays. A companion application by the same inventor, entitled "General Purpose Display Circuitry for Video Games", has been been concurrently executed and filed.
The approach taken earlier in microprocessor-based video game displays has been to create a memory map or "bit map" by writing into a memory information defining an entire frame to be displayed, as discussed in Giloi, W. Interactive Computer Graphics, Englewood Cliffs, N.J., Prentice-Hall, 1978, pp. 249-256 and in U.S. Pat. No. 4,177,462 issued to Chung. Chung attempts to liberate the game microprocessor from the arduous and very time-consuming task of preparing a memory map. He is thereby able to achieve a substantially improved capability for displaying and moving substantial numbers of objects on a screen by the use of dedicated game display circuitry. Chung's proposal does, however, continue to impose severe constraints upon the game microprocessor. Chung permits game control information to be placed in a permanent memory associated with the game display circuitry, thereby requiring extensive communication between the game microprocessor and the display circuitry. Furthermore, he requires that both the game microprocessor and the display circuitry operate synchronously off a single clock. The game microprocessor must become inactive during all communication periods and therefore time is taken or "stolen" from the game microprocessor's available time for performing game-associated computations. Finally, Chung's proposal requires the use of content addressable memories which are highly specialized, and therefore expensive, devices.
Chung's proposal makes use of specialized display circuitry. High speed general purpose computers have also been used with peripheral graphic display systems for visual simulations, as discussed in U.S. Pat. No. 4,053,740. Specialized display circuitry suffers the disadvantage of the inherent inflexibility of hard-wired systems. High speed general purpose computers are inherently flexible, but are far too costly, bulky and complicated for use in arcade or home games.
Programmable general purpose microprocessors offer flexibility and reliability, thereby suggesting that a dedicated microprocessor would be desirable for performing display functions in a video game. Available general purpose microprocessors do not, however, have the speed and parallel bit capacity to handle high resolution displays. Presently available 8-bit microprocessors can output data at a maximum bit rate of about 7.5 MHz per channel. Microprocessors with larger parallel bit capacity are slower.
General purpose microprocessors also have fixed microprograms for operating associated logic gates. The user of such a microprocessor will write programs consisting of permissible macro-instructions. Each permissible macro-instruction will activate a sequence of several micro-instructions comprising one of the fixed microprograms. The user cannot, however, change the microprograms to optimize a microprocessor for the particular use to which it is to be put.
Existing microprocessors are consequently insufficiently fast and flexible, and have insufficient parallel bit capacity, for controlling high resolution video game display functions.
The present invention is accordingly directed to circuitry for a high speed processor means for generating video display signals in response to video display data provided by the game microprocessor. The microprocessor data may be quite general in nature so that it may be transmitted to the high speed processor during a brief "handshake" period prior to each picture of a raster scan display.
The circuitry may be of very general application. The generality results in part from the limited need for communication between the game controller, e.g., the aforementioned microprocessor, and the high speed processor means. The display circuitry thereby operates substantially independently of the game details.
For example, in the concurrently filed application by the same inventor (identified above and incorporated herein as though quoted in full), the only game specific portion of the display circuitry is contained in the permanent memory which contains the representations of the objects that are to be displayed. The game microprocessor, consequently, need only supply during vertical blanking the identities of the objects to be displayed and coordinates defining the display positions and widths of the objects to be displayed. Further independence is achieved by providing different means for clocking the microprocessor and the display circuitry, although it is entirely feasible to run both off a single basic clock.